Apparatus, systems, and methods for selecting and presenting information about program content

ABSTRACT

Information may be presented on a display device about program content substantially concurrently, substantially contemporaneously, or otherwise in conjunction with the presented program, or with portions of the presented program. This presentation of information about program content may occur dynamically in response to a voice query or other query from a user while the presented program is playing or paused on the same or different presentation device on which the information about the program content is being presented.

TECHNICAL FIELD

The technical field relates to delivering media content to users, and,more particularly, to apparatus, systems and methods for providinginformation about the media content.

BRIEF SUMMARY

Apparatus, systems, and methods are disclosed for presenting informationabout program content. Some embodiments present information on a displaydevice about program content substantially concurrently, substantiallycontemporaneously, or otherwise in conjunction with the presentedprogram, or with portions of the presented program. For example, thispresentation of information about program content may occur dynamicallyin response to a voice query from a user while the presented program isplaying or paused on the same or different presentation device on whichthe information about the program content is being presented.

As one non-limiting example, if a viewer is watching a particular movieon their presentation device (e.g., television) and they see an actor inthe movie who they recognize, but can't remember the actor's name, theviewer can say “who is that?” or “who is that man?” or “who's that?”,etc., and the program content metadata including the name of the actorin the program who was displayed on the presentation device when theviewer asked the question will be automatically displayed on thepresentation device 120, optionally and/or selectively along with otherrelevant information regarding the actor (i.e., filmography, awards,biography, etc.) and/or with an additional related interactive program.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

The components in the drawings are not necessarily to scale relative toeach other. Like reference numerals designate corresponding partsthroughout the several views.

FIG. 1 an overview block diagram illustrating an exemplary communicationnetwork within which embodiments of the system for selecting andproviding information about program content may be implemented.

FIG. 2 is a block diagram of an exemplary embodiment of a contentprocessing system operable to combine a program, at least one piece ofinformation about the content of the program, and an associatedinteractive program into an output signal.

FIG. 3 is a block diagram of a receiving device (RD) content processingsystem, according to one example embodiment.

FIGS. 4A-4D illustrate an example embodiment presenting informationcorresponding to a communicated program, information about programcontent and an interactive program related to the information aboutprogram content.

FIG. 5 is a block diagram illustrating an exemplary program distributorin communication with an embodiment of the system for selecting andproviding information about program content.

FIG. 6 is a block diagram illustrating an exemplary receiving device inwhich an embodiment of the system for selecting and providinginformation about program content may be implemented.

FIG. 7 is a flowchart illustrating a process providing a response to aquery, according to an embodiment of the system for selecting andproviding information about program content.

FIG. 8 is a flowchart illustrating a process enabling presentation of atleast some of program content metadata, according to an embodiment ofthe system for selecting and providing information about programcontent.

FIG. 9 is a flowchart illustrating a process communicating a response tobe presented to a user, according to an embodiment of the system forselecting and providing information about program content.

DETAILED DESCRIPTION

FIG. 1 is an overview block diagram illustrating an exemplarycommunication network 102 within which embodiments of the system forselecting and providing information about program content 100 may beimplemented. It is to be appreciated that FIG. 1 illustrates one exampleof a communications network 102 and that the various embodimentsdiscussed herein are not limited to the exemplary network of FIG. 1.Communication network 102 may include a variety of communication systemsand may use a variety of communication media including, but not limitedto, satellite wireless media, cable media or any media over whichcommunication of broadcast television programming, on-demandprogramming, and/or streaming media may occur, and/or over whichInternet communication may occur.

Audio/Video/Data service providers, such as, but not limited totelevision service providers, provide their customers a multitude ofaudio/video and/or data programming (hereafter, collectively and/orexclusively “programming”). Such programming is often provided by use ofa receiving device 118 communicatively coupled to a presentation device120 configured to receive the programming.

Some embodiments of the system for selecting and providing informationabout program content 100 present information on the presentation device120 about program content substantially concurrently, substantiallycontemporaneously, or otherwise in conjunction with the presentedprogram, or with portions of the presented program. For example, thispresentation of information about program content may occur in responseto a query from a user while the program is playing or paused on thesame or different presentation device on which the information about theprogram content is to be presented. For example, if a viewer is watchinga particular movie on their presentation device 120 (e.g., television)and they see an actor in the movie who they recognize, but can'tremember the actor's name, the viewer can orally say “who is that?” or“who is that man?” or “who's that?”, etc., and then the program contentmetadata including the name of the actor in the program who wasdisplayed on the presentation device 120 when the viewer asked thequestion will be automatically displayed on the presentation device 120.This presentation of the program content metadata may occur optionallyand/or selectively along with other relevant information regarding theactor (i.e., filmography, awards, biography, etc.) and/or an additionalinteractive program.

The information presented about program content may include programcontent metadata received along with and/or as part of a received signalthat also includes the program content (e.g., the signal received atreceiving device 118 that is coupled to the presentation device 120).Additionally or alternatively, the information presented about programcontent may be electronically received from another remote or localsource, and/or or electronically received from (or generated using)various different automated sources of information, including, but notlimited to, remote servers, information providers 138, content providers104, local cached data, databases in any location, data aggregationsources or services, etc. Some program content metadata is generallyrelated to the entire program or large sections of the program and maybe received, retrieved and/or stored up front before the program ispresented, or during the presentation of the program, and will beavailable at any time during presentation of the program or for largeportions of the program as it is being presented on presentation device120.

In some embodiments, the system may instead or additionally beconfigured to receive, retrieve, store, cache and/or buffer particularprogram content metadata (e.g., on receiving device 100)contemporaneously with, substantially contemporaneously with,concurrently with, substantially concurrently with, shortly beforeand/or shortly after particularly related program content beingpresented (or being sent to be presented) on a presentation device 120.Such particular program content metadata is particularly related in someway to the program content currently being presented (or being sent tobe presented) on presentation device 120.

The particular program content metadata may also be selectivelybuffered, cached, and/or otherwise stored (e.g., on receiving device100) depending on how long and to what extent it is to be made availablefor quick (or quicker) access during presentation of the program orselected portions of the program. The system for selecting and providinginformation about program content 100 may be configured to selectivelyand/or dynamically cause this buffering, caching, and/or otherwisestoring the particular program content metadata to depend on one or moreof a variety of different factors. These factors include, but notlimited to: length of program; available buffer or memory size; how theparticular program content metadata is related to the particular programcontent; how long (or over how many video frames or program segments)and/or to what extent the person, thing or situation represented by theprogram content to which the particular program content metadata isrelated is being presented or otherwise referenced in the programcontent; whether the presentation of the program is currently in or willbe in fast forward, slow motion, rewind or other “trick” play orpresentation modes; an amount of the particular program content metadatato be received, retrieved, stored and/or buffered; whether, how and/orto what extent the program content metadata is continuously orperiodically made available in the received signal containing theprogram content, etc.

For example, this program content metadata may include temporal metadata(i.e., program content temporal metadata) which is defined herein asmetadata that is specifically associated with one or more particularpoints in the program, such as one or more points in the program atwhich program content is (or configured to be) presented that is relatedto or otherwise associated with the particular program content temporalmetadata. For example, this may be a point in the program at which aparticular actor appears during a scene in the program; a particularobject appears in the scene in the program; when a particular line issaid or other auditory event occurs, or other event or string of eventshas occurred in the program; etc. This particular point may continueuntil the actor or object leaves the scene, the situation represented bythe program content being presented stops or ends, or some otherselectable or set criteria is met or state is reached. A point in theprogram may refer to an exact moment in the program content or aparticular video frame, or refer to an entire chronological segment orplurality of video frames of the program content. Referring to theexample above, some examples of the temporal metadata associated withthis point in the program may include, but are not limited to theactor's name, bio, the make and model of the object appearing at thatpoint, other information regarding the actor or object, etc.

Such an association with one or more particular points in the programmay be made in a variety of different ways by the system 100. Forexample, this program content temporal metadata may be associated with aparticular frame or frames of video of the program content which areconfigured to be presented in a chronological order. The temporalmetadata may be further associated with objects or people within, orsituations represented by, particular frames of program video content.Additionally or alternatively, the program content temporal metadata maybe associated with a chronological index corresponding to or identifyingthe one or more particular relevant points in the program via atimestamp, time offset, data amount offset, video frame number, datablock number, etc. Additionally or alternatively, the program contenttemporal metadata may be associated with a point at which the programcontent temporal metadata is inserted into the signal including theprogram content, such that the program content temporal metadata will bereceived and/or become available substantially concurrently with,substantially contemporaneously with, shortly before or shortly afterthe presentation (or sending for presentation) of the program content towhich the program content temporal metadata is related.

Additionally or alternatively, triggers configured to cause the systemto obtain the corresponding program content temporal metadata (or otheradditional data) may be inserted into the signal that includes theprogram content, such that the corresponding program content temporalmetadata will be obtained from another source in response to theassociated trigger being received (e.g., by the receiver 100) in theprogram content signal (or the trigger otherwise activated by userinput, etc.). Also, the triggers may be inserted into the signal thatincludes the program content such that the corresponding program contenttemporal metadata is received substantially concurrently with,substantially contemporaneously with, shortly before, or shortly afterthe presentation of the content of the program to which the programcontent temporal metadata is related. Such triggers may be used toobtain this and/or other program metadata, such as when the programfirst begins to be presented and/or in response to user input callingfor such program content metadata.

In various embodiments, presentation of the information about programcontent may be in response to any variety or number of different userinputs or commands and/or queries, or in response to different types ofuser input commands and/or queries. These include, but are not limitedto, voice commands and/or voice queries, spoken or written naturallanguage queries, remote control device 128 commands, commands and/orvoice queries originating from a remotely located or local user device122 (e.g., a user mobile communications device), etc.

An additional interactive program may be accessed by the user and ispresented on the presentation device 122 or other user device 122 inresponse to the same or another voice command or query; the userselecting the displayed information about program content (or relevantportion thereof) using the remote control 128; and/or the user selectinganother associated selectable element (e.g., an icon or menu item, etc.)presented on the display and/or other user device 122. The associatedselectable element (e.g., an icon or menu item, etc.) presented on thepresentation device 120 and/or other user device 122 may be based on,related to, and/or presented in response to the user input and/or inresponse to some or all of the information about program contentcurrently being presented on the presentation device 120 or other userdevice 122. In some embodiments, some or all of the information aboutprogram content and/or the interactive program may be automaticallydisplayed concurrently with, contemporaneously with, in conjunctionwith, or instead of, other additional information, electronic programguides, device menu systems, etc.

For example, the information automatically presented about programcontent, or a selectable interface element associated therewith, may beselectable by the user. Upon selection, further interactive programming(such as that related to the selected presented information regardingprogram content) is received, or otherwise retrieved from local or otherstorage, by a receiving device and loaded such that the interactivecontent is presentable on the presentation device in response to theselection. During the receiving and loading process of the interactiveprogramming, the presentation of the program (and in some embodiments,the presentation of the information regarding program content) continuesin an uninterrupted manner. When a sufficient portion of the interactiveprogramming is available for presentation on the presentation device,the system may optionally cause the presentation to change from thepresented program to the interactive program, or to presenting acombination thereof.

Receiving device 118 itself may interconnect to one or morecommunications media or sources (such as a cable head-end, satelliteantennae, telephone company switch, Ethernet portal, router, server,off-air antennae, or the like) that provide the programming. Thereceiving device 118 commonly receives a plurality of programming by wayof the communications media or sources described in greater detailbelow. Based upon selection by the user, the receiving device 118processes and communicates the selected programming to the one or morepresentation devices 120. The receiving device 118, any other devicesshown in FIG. 1, and/or other devices or systems described herein mayinclude at least one computer processor coupled to at least onenon-transitory memory, and that is configured to executecomputer-executable instructions to carry out, enable and/or otherwiseperform applicable actions described herein of the system 100,communication system 102 and the different embodiments described herein.

Examples of a receiving device include, but are not limited to atelevision converter, receiver, set-top box, television receivingdevice, television receiver, television recording device, satelliteset-top box, satellite receiver, cable set-top box, cable receiver,personal computer, media player, mobile device, tablet computing device,smart phone and/or television tuner. Accordingly, the receiving device118 may be any suitable converter device or electronic equipment that isoperable to receive programming. Further, the receiving device 118 mayitself include user interface devices, such as buttons, switches adisplay and more include the presentation device 120. In manyapplications, a remote control device 128 is operable to control thepresentation device 120 and other user devices 122.

Examples of a presentation device 120 include, but are not limited to, atelevision (TV), a personal computer (PC), a sound system receiver, adigital video recorder (DVR), a compact disk (CD) device, media player,mobile device, tablet computing device, smart phone, game system, or thelike. Presentation devices 120 employ a display, one or more speakers,and/or other output devices to communicate video and/or audio content toa user. In many implementations, one or more presentation devices 120reside in or near a customer's premises 116 and are communicativelycoupled, directly or indirectly, to the receiving device 118.

Customer premises 116 may include an optional network 136, or anetworked system, to which receiving devices 118, presentation devices120, and/or a variety of user devices 122 can be coupled, collectivelyreferred to as endpoint devices. Non-limiting examples of network 136include, but are not limited to, an Ethernet, a twisted pair Ethernet,an intranet, a local area network (LAN) system, or the like, and may bewired or wireless. One or more endpoint devices, such as PCs, datastorage devices, TVs, game systems, sound system receivers, receivingdevices 118, user devices 122, Internet connection devices 130, digitalsubscriber loop (DSL) devices, wireless LAN devices, WiFi devices,Worldwide Interoperability for Microwave Access (WiMax) devices, or thelike, are communicatively coupled to network 136 so that the pluralityof endpoint devices are communicatively coupled together. Thus, thenetwork 136 allows the receiving device 118 and the other interconnectedendpoint devices to communicate with each other.

Embodiments of the system for selecting and providing information aboutprogram content 100 receive a program contained in a signal and alsoreceive, at various times, at least one piece of information aboutprogram content (i.e., program content metadata), and/or an interactiveprogram in the signal. Thus, when a user queries about somethingregarding the program as it is being presented, no channel switching andre-tuning is required to access the information about program contentand/or the additional interactive program since the receiving device istuned to a signal that has the program, the program metadata and in someembodiments, the additional interactive program therein. Thus, theviewer is presented with the information about program content inresponse to their query substantially seamlessly, with little or nonoticeable time delay. In at least one embodiment, the additionalinteractive program relates to the program that is being presentedand/or to the presented information about the program content beingpresented.

A plurality of content providers 104 a-104 i provide program content,such as video content and/or audio content, to a distributor, such asthe program distributor 106. At least some of the content providers 104a-104 i may include television stations which provide local or nationalvideo programming, special content providers which provide premium basedprogramming or pay-per-view programming, and/or radio stations whichprovide audio programming. In addition, or in the alternative, at leastsome of the content providers 104 a-104 i may include those whichprovide on-demand services, streaming media services, multimedia fileservices and/or which provide audio, video, and other types of dataservices via Internet Protocol or other network protocol over thecommunication system 108 and/or other network infrastructure.

A plurality of information providers 138 a-138 i may also be coupled tocommunication system 108. Information providers 138 a-138 i may providevarious forms of content and/or services to the various devices residingin the customer premises 116. For example, information provider 138 amay provide requested information of interest to PC 132, user device 122and/or receiving device 118. This information of interest may includesome or all of the program content metadata (e.g., individually, in anaggregated form or on-demand, etc.) and/or other information related tothe program. Information providers 138 a-138 i may further performvarious transactions, such as when a user purchases a product or servicevia their PC 132, user device 122 and/or receiving device 118 related toand/or in response to a user command, the program and/or the programcontent metadata.

Program content comprising a program is communicated to the programdistributor 106 from the content providers 104 a-104 i through suitablecommunication media, generally illustrated as communication system 108for convenience. Communication system 108 may include many differenttypes of communication media, now known or later developed. Non-limitingmedia examples include telephony systems, the Internet, internets, cablenetworks, fiber optic networks, microwave networks, asynchronoustransfer mode (ATM) systems, frame relay networks, packet switchednetworks, digital subscriber loop (DSL) systems, radio frequency (RF)networks, and satellite systems. Further, program content communicatedfrom the content providers 104 a-104 i to the program distributor 106may be communicated over various combinations of media. For example, atelevision broadcast station may initially communicate program content,via an RF signal or other suitable medium, which is received and thenconverted into a digital signal suitable for transmission to the programdistributor 106 over a fiber optics network. As another nonlimitingexample, an audio content provider may communicate audio content via itsown satellite system to the program distributor 106.

The received program is converted by one or more devices (not shown) asnecessary at the program distributor 106 into a suitable signal that iscommunicated (i.e., “uplinked”) by one or more antennae 110 to one ormore satellites 112 (separately illustrated herein from, althoughconsidered part of, the communication system 108). It is to beappreciated that the communicated uplink signal may contain a pluralityof multiplexed programs. The uplink signal is received by the satellite112 and then communicated (i.e., “downlinked”) from the satellite 112 inone or more directions, for example, onto a predefined portion of theplanet. It is appreciated that the format of the above-described signalsare adapted as necessary during the various stages of communication.

An antenna 114 that is within reception range of the downlink signalcommunicated from satellite 112 receives the above-described downlinksignal. The antenna 114 can be located at a customer premises 116.Examples of customer premises 116 include a residence, a business, acar, or any other suitable location operable to receive signals fromsatellite 112 or other communication systems. The received signal iscommunicated, typically over a hard-wire connection, to a receivingdevice 118 that converts the received signal into a signal suitable forcommunication to a presentation device 120 and/or a user device 122.

The receiving device 118 may receive content partially from, or entirelyfrom, another source other than the above-described antenna 114. Otherembodiments of the receiving device 118 may receive locally broadcast RFsignals, and/or may be coupled to communication system 108 via anysuitable medium. Non-limiting examples of media communicatively couplingthe receiving device 118 to communication system 108 include cable,fiber optic, radio frequency, streaming or Internet media.

User device 122 may be any suitable device that is operable to receive asignal from the receiving device 118, another endpoint device, or fromother devices internal and/or external to the customer premises 116.Additional non-limiting examples of user device 122 include user mobiledevices, smart phones, tablet computing devices, media players, opticalmedia recorders, such as a compact disk (CD) recorder, a digitalversatile disc or digital video disc (DVD) recorder, a digital videorecorder (DVR), or a personal video recorder (PVR). User device 122 mayalso include, but is not limited to, game devices, RF transceivers, andpersonal computers (PCs) or other computing devices. Practically anyconsumer or other electronics device may be considered as a user device122 herein.

An interface between the receiving device 118 and a user (not shown) maybe provided by a hand-held remote device 128. Remote 128 typicallycommunicates with the receiving device 118 using a suitable wirelessmedium, such as infrared (IR), RF, audio, or the like. Remote 128includes a plurality of buttons, controllers and/or actuators which eachhave an associated operating function which may be pre-defined, orchange dynamically depending on the context in which they are used (alsoreferred to as a “focus”). The remote 128 is used to communicatecommands to the receiving device 118 when the buttons, controllers oractuators are actuated.

Other devices and/or input functionality (not shown) may also becommunicatively coupled to the receiving device 118, presentation device120 and/or user device 122, or may be part of the receiving device 118,presentation device 120 and/or user device (e.g., presentation devicemay include its own speakers and/or microphones 126) so as to enablevarious input from the user and/or provide output to the user. Forexample, this may include a microphone with noise cancelingfunctionality to detect a viewer's voice commands and/or queries whilethe audio of the program is playing. This may additionally include voicecommand and/or query interpretation functionality (e.g., voicerecognition functionality, natural language query analysisfunctionality, etc.) described further herein to interpret, translateand/or analyze voice queries to facilitate and/or enable the receivingdevice 118, presentation device 120 and/or user device 122 to searchfor, obtain, access and/or retrieve the desired information (e.g.,information about content of a program).

Customer premises 116 may include other devices which arecommunicatively coupled to communication system 108 via a suitablemedia. For example, personal computer (PC) 132 may be communicativelycoupled to the communication system 108 via the network 136.Alternatively, any of the devices in the customer premises 116 may bedirectly and/or indirectly connected to the communication system 108.For example, telephone 134 may employ a hardwire connection or an RFsignal for coupling to communication system 108. Also, the user device122, may be connected to the communication system 108 via a cellularsignal, and/or via network 136. Also, the receiving device 118 may beconnected to the network, such as, for example, via a wired or wirelessrouter or other Internet or LAN connection device, such as wirelessInternet connection device 130.

The above description of the communication network 102 and the variousdevices therein is intended as a broad, non-limiting overview of anexemplary environment in which various embodiments of the system forselecting and providing information about program content 100 may beimplemented. The communication network 102 and the various devicestherein, may contain other devices, systems and/or media notspecifically described herein.

FIG. 2 is a block diagram of an exemplary embodiment of a contentprocessing system 202 operable to combine program 204, at least onepiece of information about the content of program 204 (i.e., programcontent metadata 208), and optionally an associated interactive program206 into output signal 210. Signal 210 may also include otherinteractive programs 212 and/or other additional associated programcontent metadata 214. As noted above, in some embodiments, the same orany combination of different content providers 104 a-104 i and/orinformation providers 138 a-138 i may provide program 204, programcontent metadata 208 and/or interactive program 206 to the programdistributor 106, via communication system 108 (FIG. 1). The subjectmatter of the interactive program 206 may be associated with the subjectmatter of the program 204, points within the program 204, or with thesubject matter of corresponding program content metadata 208.

All or various pieces of program content metadata 208, 214 may beprovided at times of interest in response to a query relative to theassociated program that is being presented (or that is configured to bepresented) on the presentation device 120. Program content metadata 208,214 may be provided from time to time, periodically, or at a singletime, as determined by a program provider 104, information provider 138,program distributor 106 and/or end user.

Program 204, along with a plurality of other programs, may beaggregated, interleaved, or otherwise combined (multiplexed) into signal210. Accordingly, the signal commonly contains many programs, eachcarrying unique program content. Further, any given program (e.g.,program 204) may have multiple pieces of program content metadata 208and/or interactive programs 206 associated therewith and/or individuallyassociated with related points within, segments within or portions ofthe program 204. That is, in some embodiments, the program 204,corresponding program content metadata 208, 214 and/or associatedinteractive programs 206, 212 received from the plurality of contentproviders 104 a-104 i and/or information providers 138 a-138 i iscommonly communicated in a signal 210 from the program distributor 106.Also, corresponding program content metadata 208, 214 and/or associatedinteractive programs 206, 212 are associated, within the signal 210,with the corresponding program 204, points within, segments within,and/or portions of the program 204.

In some embodiments, at appropriate times, program content metadata 208is added into the signal 210, or added into information from whichsignal 210 is generated. Thus, a portion of the program 204 iscommunicated at substantially the same time as the added correspondingprogram content metadata 208 is received by receiving device 118 in thesame signal. The portion of the program 204 and information regarding tothe added corresponding program content metadata 208 are then presentedtogether on presentation device 120 in response to a user command oruser query (e.g., a voice query 308 shown in FIG. 3).

The query may be received by the receiving device 118 directly orindirectly from a user 308. In some embodiments, the user command oruser query 308 may be initially received and/or processed by anotherdevice than the receiving device 118 (e.g., user device 122, PC 132 orinformation provider(s) 138), and then a command is communicated to thereceiving device 118 from the device that initially received and/orprocessed the user command or query to present particular programcontent metadata related to the initial user command and/or query.Additionally or in the alternative, in some embodiments, the informationcorresponding to the program content metadata 208 and or an additionalinteractive program 206 is presented on a different presentation device(e.g., on the display of user device 122 shown in FIG. 1) than that onwhich the program is being presented in response to the user command orquery 308, or in response to and/or based on the particular programcontent metadata 208 that is being presented on the presentation device120 in response to the user query 308 or other received command.

It is to be appreciated that a plurality of interactive programs 212 maybe added into signal 210, or added into information from which signal210 is generated. The other interactive programs 212 may besubstantially the same as the above-described interactive program 206,such as when different types of receiving devices 118 require variationsof a similar or common interactive program. Thus, the interactiveprogram 212 is responsive to its respective associated program contentmetadata 214.

Alternatively, the other interactive programs 212 may provide differentinteractive content, such as when different entities wish to advertisetheir products at different times to the viewer or user (e.g., user 308shown in FIG. 3) of the program 204. Such interactive programs 212 mayhave associated program metadata 214 added into the signal 210 atselected times. When the portion of the program 204 that is communicatedwith the corresponding program content metadata 214 is received byreceiving device 118, the program 204 and information corresponding tothe program content metadata are presented together on presentationdevice 120 in response to a user query or other command. In somesituations, multiple different pieces of information about programcontent corresponding to different interactive programs may beconcurrently or contemporaneously presented on the same presentationdevice and/or on various different presentation devices (e.g., userdevice 122).

For example, when a user 306 is watching a program on presentationdevice 120 and they see a particular vehicle presented on thepresentation device, the user may say “what's that car?” In response,the make, model and year of the vehicle along with a message stating“push select on your remote for more information,” or the like, may bepresented in a streaming banner area (i.e., which is also referred to asa “crawl,” “crawler,” “slide,” “ticker” or “news ticker”) on the bottomor other area of the display 124 of presentation device 120 while theprogram continues to play. Also, the same or similar information may besent to and/or automatically presented on the user device 122 (e.g., theuser's mobile device), along with the interactive program 206, such asan application to shop for vehicles of that type, and/or listings oradvertisements of vehicles of that type.

If the user 306 pushes a select button on their remote control 128 (oractivates another designated input device or element) during, orotherwise in conjunction with, the presentation of the “push select onyour remote for more information” message on presentation device 120 (orany other prompt or message in relation to the user query), any numberof different actions may occur in response. Such actions include, butare not limited to, one or more of: launching and/or presenting theinteractive program 206 on the receiving device 118 and/or other userdevice 122; presenting additional information regarding the associatedprogram content metadata 208 on the presentation device 118 and/or otheruser device 122; presenting user prompts related to the user query 306,response to the user query and/or associated program content metadata208 on the presentation device 118 and/or other user device 122; makinga purchase or order related to the user query, response to the userquery, associated program content metadata 208, and/or other purchase ororder; recording and/or using data regarding user interest orpreferences; recording and/or using data regarding relationships of userinterest or preferences to the user query, response to the user queryand/or associated program content metadata 208; making and/or recordingdeterminations regarding user interest or preferences related to theuser query, response to the user query and/or associated program contentmetadata 208; logging the user into an online account; prompting theuser for credential information; presenting a selection menu related tothe user query, response to the user query and/or associated programcontent metadata 208 on the receiving device 118 and/or other userdevice 122 (or sending the selection menu to such devices); sending toor presenting an advertisement on the receiving device 118 and/or otheruser device 122, presenting information answering an additional query onthe receiving device 118 and/or other user device 122, (or sending suchinformation to such devices), charging a user account; providing creditsto a user account; obtaining, retrieving, request and/or send additionalprogram content metadata; etc.

FIG. 3 is a block diagram of a receiving device (RD) content processingsystem 302, according to one example embodiment. RD content processingsystem 302 outputs a suitable signal 304 formatted for presentationdevice 120. Upon receipt of the signal 304, presentation device 120presents video and/or audio information of signal 304.

Signal 304 is based upon a program selected by a viewer of presentationdevice 120. When no information about program content (i.e., programcontent metadata) is in signal 210, signal 304 includes the program ofinterest that has been selected for presentation by a viewer. As anon-limiting example, a viewer or user (e.g., user 308) may select aparticular television program for presentation, such as program 204. Itis appreciated that the selected program 204 is communicated in signal210 to the receiving device 118. Signal 210 may include other programstherein in addition to the selected program 204.

At times, program content metadata 208, 214 may be in the signal 210. Inresponse to receiving a user query (e.g., voice query 308) or othercommand, RD content processing system 302 communicates signal 304 topresentation device 120 having the selected program 204 and the programcontent metadata 208, 214 related to the user query. Accordingly, theselected program 204 and the related program content metadata 208, 214are presented on presentation device 120. Additionally or alternatively,the selected program 204 and the related program content metadata 208,214 are presented on and/or sent to user device 122, and/or anotherpresentation or user device.

FIGS. 4A-4D illustrate an embodiment presenting informationcorresponding to a communicated program, information about programcontent and an interactive program related to the information aboutprogram content. As noted above, the RD content processing system 302generates and communicates a signal to presentation device 120, userdevice 122, and/or another presentation or user device. When the programcontent metadata 208 is not present in signal 210, or a user query orother command has not been received regarding content of the programbeing presented, the generated signal 304 corresponds to the programcontent information 402 illustrated in FIG. 4A. For example, assumingthat the program 204 in signal 210 corresponds to a movie, the generatedsignal 304 communicates video and audio information to the presentationdevice 120 so that the user is able to watch the movie (the programcontent 402).

At various times during or previous to the communication of the program204, the program content metadata 208 may be added into signal 210.Timing of the addition of the program content metadata 208 into signal210 is preferably coordinated with the subject matter of the program204. (However, coordinated insertion of the program content metadata 208into signal 210 is not essential. That is, the program content metadata208 may be communicated at other times.)

As a simplified illustrative example, assume that the program 204 is anaction film wherein the famous spy, in a driving scene, is driving a newprototype automobile. A manufacturer or seller of the prototypeautomobile may wish to have the user view information, an advertisementand/or a related interactive program pertaining to the prototypeautomobile if the user query received during that scene indicates theuser may be interested in such an automobile or open to particular typesof offers based on the user query and/or other demographic anduser-related data. The system 100 described herein provides suchfunctionality. In particular, the system 100 provides the user anopportunity to access the applicable program content metadata 204 (e.g.,automobile year, make, model, other movies in which it was featured,etc.) in response to potential user queries regarding the automobile,and also an opportunity to access the associated interactive program206, during or near to the showing of the prototype automobile in theaction film.

In some embodiments, a marker, a time, or other indicia associated withthe particular content metadata 204 regarding the prototype automobileis used to indicate to the RD content processing system 302 at whichpoint during the action film, the particular content metadata 204 isavailable to be presented as (or included in) the information aboutprogram content 406 presented in response to the user query.

As noted above, in response to receiving a user query (e.g., voice query308) regarding program content or other command, the RD contentprocessing system 302 obtains an applicable or otherwise relatedresponse to the query or command by accessing applicable program contentmetadata 208, if any, that is received within signal 210. Then, thesignal 304 communicated to presentation device 120 is changed such thatthe information about program content 406 is presented based on theapplicable program content metadata 208, as illustrated in FIG. 4B. Theinformation about program content information 406 may be concurrentlypresented with the program content 402 in a manner that does notsignificantly interrupt viewing of the presented program content 402.Any suitable form may be used for the presented information aboutprogram content 406, including alpha-numeric text, symbolic icons,and/or other graphics. Information about program content 406 may bepresented at any suitable location on the display of presentation device120. Any suitable size for the information about program content 406 maybe used. The received user query or other command and/or accessing therelated program content metadata 208 may also cause the RD contentprocessing system 302 to change the signal to include audio informationpertaining to the subject matter of the interactive program 206 and sendsuch audio information to other devices (e.g., user device 122 shown inFIG. 1).

It is appreciated that the different forms, formats and types of theprogram content metadata and the presented information about programcontent 406 based on such metadata is nearly limitless. Accordingly, forbrevity, such numerous possible information about program content 406are not all described herein. It is to be appreciated that all suchvariations in the type and nature of the information about programcontent 406 is within the scope of this disclosure. However, someexamples of the different forms, formats and types of the programcontent metadata and the presented information about program content 406based on such metadata include, but are not limited to, one or more, orany combination of: information regarding people, products, objects,situations, and/or events depicted in and/or referenced by the programcontent 402; graphical labels displayed on various people, products,objects, situations, and/or events depicted in and/or referenced by theprogram content 402; banners, icons, boxes, crawls, labels, selectablegraphical elements and/or tickers of any shape displayed anywhere on thepresentation device 120 display and/or displayed with or adjacent topeople, products, objects, situations, and/or events depicted in and/orreferenced by the program content 402; historical data; filmographies;film, television program, play and/or other acting or productioncredits; biographical data; social media data regarding one or moreusers; social media data regarding people depicted in and/or referencedby the program content 402; commentaries; advertisements; offers;recommendations; channel recommendations, programming recommendations;information regarding currently available related programming and/orrelated programming currently being broadcast; reviews; data from books;electronic books; quotes; blogs; Web sites; program ratings; linkedinformation; links to information; indexes to information; prompts;video data; audio data, etc.

In some embodiments, presentation of the information about programcontent 406 remains viewable for a brief period so as not to bedistracting to the user. Accordingly, at some predefined time, the RDcontent processing system 302 changes the signal 304 to end presentationof the information about program content 406. However, such informationabout program content 406 may be stored, cached, buffered, etc., orotherwise may still be made available for a selected, determined,dynamically changing, or pre-defined period of time depending on devicecapabilities, user preferences and/or other criteria.

After ending the presentation of the information about program content406, embodiments may keep the program content metadata 208 enabled. Thatis, the user is able to access the program content metadata 208 and/orthe interactive program 206 by repeating the same input and/or providingfurther input to receiving device 118. For example, this access may beprovided by selecting the presented information about program content406, activating a button on the remote 128, responding to a presented orotherwise communicated invitation, providing input via another userdevice 122 (e.g., the user's mobile device), etc.

One exemplary embodiment is operable to present an invitation 410 alongwith a banner 412, as illustrated in FIG. 4C. Banner 412 may bepresenting the information about program content 406 or be anothergraphical indicia presented to the user for a different purpose. Forexample, the banner 412 may include information describing the relevantprogram content in response to the user query, present advertisementsand/or offers, present general program information such as that which ispresented when the user actuates an “information button” or the like onremote 128 (FIGS. 1 and 3), and/or present any other types ofinformation described herein. As another non-limiting example, thebanner may describe related program content currently available or whichwill be available on alternative channels, and/or an electronicprogramming guide (EPG) or the like. The invitation 410 may be presentedwith any suitable banner 412.

Selection of the invitation 410 may be effected in a variety of manners.For example, a button 304, actuator, or the like on remote 128 may haveits focus changed to correspond to selection of the invitation at timeswhen the banner 412 is presented. Alternatively, the remote 128 mayinitially have its focus changed to correspond to selection of thebanner 410 itself. “Focus” is the operational functionality associatedwith a particular button, actuator or the like. Focus may be a fixedfunctionality, or may be changed based upon the particular functionalityrequired at that time. For example, “power” button may have a fixedfunctionality of turning on or off a device. An “enter” or “select”button may have a plurality of different situational dependent functionsdepending.

Other devices and or systems may be used to cause selection of theinvitation 410. For example, special dedicated actuators, such asbuttons or switches, may reside on remote 128, on receiving device 118,or on another device. A menu system or the like presented onpresentation device 120, or presented on a display on remote 128, orother user device (e.g., a user's mobile device) may be used to selectthe invitation 410. It is appreciated that any suitable system and/ormethod of selecting the invitation 410 and/or banner 412 may be used.

As noted above, embodiments present the interactive content information414, after selection of the invitation 410, on presentation device 120,as illustrated in FIG. 4D. That is, after a portion of the interactiveprogram 206 is downloaded, processed, and launched, the RD contentprocessing system 302 changes the signal 304 to present the interactivecontent information 414 and/or additional related information aboutprogram content 406 in response to selection of the invitation 410and/or other user input.

FIG. 5 is a block diagram illustrating an exemplary program distributor106 in communication with an embodiment of the system for selecting andproviding information about program content 100. As noted above, program204, and at various times, program content metadata 208 and interactiveprogram 206 are combined and communicated in a single signal 210 to areceiving device 118. This function may be performed at the programdistributor 106. However, in other embodiments this function may resideat the receiving device 118 and/or other suitable locations.

A plurality of receivers 502 a-502 i are communicatively coupled tocommunication system 108. The receivers 502 a-502 i receive program 204provided by the content providers 104 a-104 i. Some receivers 502 alsoreceive interactive program 206, 212, and/or program content metadata208, 214, provided by the content providers 104 a-104 i, informationproviders 138 a-138 i, or another provider (not shown).

Multiplexing system 504 is communicatively coupled to the receivers 502,transmitter 506, and program content metadata processing system 510.Multiplexing system 504 generates a signal 508 with a plurality ofprograms, each program corresponding to unique program contentassociated with a channel. Further, multiplexing system 504 combines theinteractive programs 206, 212 and/or program content metadata 208, 214(FIG. 2) into the signal 508.

The signal 508 generated by the multiplexing system 504 is communicatedto transmitter 506. Transmitter 506 communicates a signal 210 with theprograms therein, via a suitable medium, to the receiving device 118.For example, the signal 210 with the programs may be communicated usinga satellite signal, via satellite antenna 110, satellite 112 and antenna114, as described above. The signal 210 with the programs mayalternatively be communicated to the receiving device 118 via a cablesystem or the like in the communication system 108 to which thereceiving device 118 is directly, or indirectly, coupled to.

As described herein, some embodiments combine the information aboutprogram content 208, 214 into the signal 508 when they are received fromcontent providers 104 a-104 i. Or, the program content metadata 208, 214may already reside in the information received from the contentproviders 104 a-104 i. The transmitter 506 receives the signal 508, andafter processing and modification, communicates a corresponding signal210. For example, if transmitter 506 communicates signal 210 tosatellite 112 (FIG. 1), the signal 508 is processed and modified into awireless signal. Alternatively, if signal 210 is communicated over acable system, fiber optics system, or the like, the signal 508 isprocessed and modified into a signal suitable for communication overthat particular system.

Furthermore, information providers 138 a-138 i or another provider (notshown) may separately provide program content metadata 208, 214. Theseparately provided program content metadata 208, 214 are then combinedinto the signal 508 at an appropriate time or so as to be coordinatedwith presentation of the program 204.

Such separately provided program content metadata 208, 214 may be storedin a convenient location, such as memory 512. As noted above, a marker,a time, or other associated indicia may be used to indicate to thecontent processing system 202 when or at which corresponding pointsduring the program 204 the information about program content 406 is tobe communicated in signal 210. Thus, the marker, time, or other indiciamay be used to indicate to the content processing system 202 when or atwhich corresponding points during the program 204 multiplexing system504 is to combine the program content metadata 208, 214 (FIG. 2) intothe appropriate signal with the program 204, such that it will beavailable should a query be received related to such program contentmetadata 208, 214 during the corresponding point or points during theprogram. The separately provided program content metadata 208, 214 maybe received in any suitable format, such as in a communication receivedfrom a server or other source via communication system 108 or in aphysical media, such as, but not limited to, an optical storage media,smart card or other memory or storage device.

In some embodiments, the interactive program 206, 212 may already residein the information received from the content providers 104 a-104 i.Thus, the interactive program 206, 212 is communicated along with theprogram 206, 212 in the signal 210 without additional processing on thepart of the content processing system 202.

Alternatively, information providers 138 a-138 i or another provider(not shown) may separately provide the interactive program 206, 212. Theseparately provided interactive program 206, 212 may be received in anysuitable format, such as in a communication received from communicationsystem 108 or in a physical media, such as, but not limited to, anoptical storage media, smart card or other memory or storage device.

The separately provided interactive program 206, 212 may be stored in aconvenient location, such as memory 512. Thus, the interactive program206, 212 does not have to be continuously provided with the program 204.Accordingly, a marker, a time, or other associated indicia may be usedto indicate to the content processing system 202 when or at whichcorresponding points during the program 204 multiplexing system 504 isto retrieve the interactive programs 206, 212 such that they areincluded in signal 508 with the program 204, such that it is availableat the applicable points during the program.

The above-described multiplexing operations wherein the program contentmetadata 208, 214 and/or interactive program 206, 212 are retrieved frommemory 512 and combined into the appropriate signal 508 with the program204 are controlled by the program content metadata processing system510. Information about program content metadata multiplexing logic 514may be retrieved and executed by the information about program contentprocessing system 510 to perform the multiplexing operations. Theinformation about program content metadata multiplexing logic 514 isillustrated as residing in memory 512 for convenience. Alternatively,the information about program content metadata multiplexing logic 514may reside in another memory media (not shown), or may be combined withother logic.

For convenience, the program content metadata processing system 510 andmemory 512 are illustrated and described as separately residing apartfrom the multiplexing system 504. It is appreciated that the programcontent metadata processing system 510 and/or memory 512 may reside inother locations, such as within multiplexing system 504, as a componentof other systems, or as a stand-alone dedicated system or memory.

Multiplexer system 504 is illustrated for convenience as a separatecomponent operable to receive one or more signals with program 204 fromanother multiplexer system, and operable to combine the program contentmetadata 208, 214 and/or interactive program 206, 212 (FIG. 2) into theappropriate signal with the program 204. As another example, such amultiplexer system 504 may be located at a content provider 104 orinformation provider 138, and combine the program content metadata 208,214 and/or interactive program 206, 212 into the appropriate signal withthe program 204. In another embodiment, two multiplexer systems 504 maybe used, where a first multiplexer system 504 combines the interactiveprogram 206, 212 into the appropriate signal with the program 204, andthe second multiplexer system 504 combines the program content metadata208, 214 into the appropriate signal with the program 204. The twomultiplexer systems 504 may be in the same or different locations.

FIG. 6 is a block diagram illustrating an exemplary receiving device 118in which an embodiment of the system for selecting and providinginformation about program content 100 may be implemented. The exemplaryreceiving device 118 may include a plurality of tuners 602 a-602 i, avideo processing system 604, a buffer 606 and memory 608. Programcontent metadata logic 610 may reside in memory 608. Further, programcontent metadata invitations and other interactive content 410 mayreside in memory 608.

In this exemplary embodiment, a tuner receives the signal 210 from theantenna 114 and tunes to the received signal 210 having the selectedprogram 204 (FIG. 2). Video processing system 604 receives the signalfrom the tuner, and processes the received program 204 into the signal304.

Some receiving devices 118 may include buffer 606. Buffer 606 may be ahard-drive memory system or other suitable memory system operable tostore the program 204, the program content metadata 208 and/or theinteractive program 206 from a received signal 210.

Video processing system 604 may further perform a variety of functionsduring the processing of the program which is ultimately communicated tothe presentation devices 120 or user devices 122. Non-limiting examplesinclude decryption of secure signals, demodulation of information in thereceived signals, formatting the information in the output signal into adigital or analog signal, preparing an electronic programming guide(EPG), or providing various “trick” functionalities that are presentedto the user in selectable formats. Other functions not described abovemay also be performed by the video processing system 604.

At some point, program content metadata 208 is received in the signal210. Video processing system 604 recognizes the program content metadata208 and may store it in memory 608, at least temporarily. Whenpresenting the program 204, the receiving device 118 then directly orindirectly receives a user query or other command (e.g., voice command),deciphers it and determines whether there is current program contentmetadata available corresponding to the point in time during the programat which (or near which) the user query was received. If such currentprogram content metadata is available, the receiving device 118 may thendetermine the applicability, relevance and/or usefulness of currentlyavailable program content metadata on which a response to the query maybe based, or to include in the response. This analysis may be based onthe query or command received and/or additional information regardingthe user or user demographics described herein.

The particular program content metadata is then selected to be includedin, or used in the formation of, a response to the received user queryto be displayed on the presentation device 120. One or more varioussteps or acts in this program content metadata selection process may beperformed in different order and/or concurrently, performed by otherdevices, servers or information providers (e.g., information provider(s)138, content provider(s) 104, user device 122, etc.), and the resultingdata directly and/or indirectly communicated to the receiving device 118via communication system 108 or via other communication channels. Suchprocesses may include, but are not limited to, implementing variousfunctionalities to interpret the query, select the appropriate programcontent metadata and form the response to be presented to the user. Suchvarious functionalities may include one or more of: voice recognition,interpretation and/or voice processing functionality; languagecomprehension and/or interpretation functionality; natural languagequery processing, interpretation and/or deciphering functionality;relational database functionality; probabilistic and statistical modelfunctionality; artificial intelligence functionality; neural networks;predictive model functionality; and Bayesian or other inference analysisfunctionality, etc. Once the response is formed using the selectedprogram content metadata, the program content metadata processing system510 changes the signal 304 such that the information about programcontent 406 (including the response and any other applicableinformation, invitations, prompts, banners or other graphicalcomponents) is presented on the presentation device 120 with thepresentation of the program content 402.

In some embodiments, the information about program content 406 ispresented for a relatively brief period. At the end the period, if noselection of the information about program content 406 or invitation 410is received, the video processing system 604 changes the signal 304 sothat the some or all of the information about program content 406 is nolonger presented on presentation device 120. The length of the period inwhich the information about program content 406 is presented may bepredefined. In some situations, the period may be a few seconds so as toprovide sufficient notice to the user and sufficient time for the userto read and/or listen to the information presented in the informationabout program content 406, banner 412 and/or invitation 410 and/oreffect selection of the information about program content 406, banner412 and/or invitation 410, if desired.

In other situations, the information about program content 406, banner412 and/or invitation 410 may automatically be presented during otherrelevant portions of the program and may contain the same and/or otherrelevant information, depending on how the information relates to theother relevant portions of the program. For example, the program may bepresenting an object of interest and the program content metadata 208,related in some manner to the object of interest, is presented inresponse to a user query related to the object of interest. Then, eachtime the object of interest is presented in the program and/or othersubsequent programs, additional information related to that object orrelated to how that object is related to the current scene is presented.

In various embodiments, the invitation 410 is not automaticallypresented on the presentation device 120 in response to a user query.Presumably, the user is aware of the previously presented correspondinginformation about program content 406. If the user later becomesinterested in accessing the interactive content information 414associated with the information about program content 406 (which is nolonger presented), the user may access the interactive program byselection of the invitation 410. That is, the interactive program 206may be selected for presentation by a user after the information aboutprogram content 406 is no longer presented on presentation device 120.

The invitation 410 may be retrieved from memory 608 and may optionallybe presented with banner 412. A focus of a button or other actuator onremote 128, for example, may be operable to cause presentation of theinvitation 410 on the presentation device 120. Thus, if the user wantsto access the interactive content information 414 related to previouslydisplayed information about program content 406, actuation of acorresponding button or actuator causes presentation of invitation 410(and optionally, the banner 412). Selection of the invitation 410 causespresentation of the interactive content information 414 as describedherein.

In one embodiment, information about program content 406 may remainactive (by continued presentation of the information about programcontent 406 or through its invitation 410) until the user changes fromthe current channel associated with the information about programcontent 406, the relevant scene or portion of the program ends, and/oranother query is received. Since the information about program content406 no longer presumably pertains to the current channel, theinformation about program content 406, invitation 410 and/or banner 412are deactivated. In some embodiments, the information about programcontent 406, invitation 410 and/or banner 412 may remain active for apredefined number of events, such as, but not limited to, a predefinednumber of channel changes or an ending of the program 204.

In some embodiments, if more recent program content metadata 208 isreceived, the previously received program content metadata 208 isdeactivated. That is, more recent program content metadata 208 mayreplace a previously received program content metadata 208.

Some embodiments filter information from received program contentmetadata 208, such as based on a determination of whether a user hasauthorization to access the program content metadata 208 and/orinteractive program 206. For example, access may be restricted due tothe nature of the interactive program 206, such as adult programoriented interactive program. Or, the received program 204 may haveaccess restrictions, such as premium or pay-per-view content, whereaccess to the associated program content metadata 208 and/or interactiveprogram 206 is also restricted. Or, the interactive program 206 itselfmay have access restrictions, such as a premium interactive program orpay-per-view interactive program. Access rights may be assessed by thereceiving device 118 in any suitable manner to determine if theassociated program content metadata 208 and/or interactive program 206is accessible. If not accessible, the information about program content406, banner 412 and/or invitation 410 may not be presented onpresentation device 120. Or if presented, access to the interactiveprogram 206 may be prohibited or denied using another suitable process.Some embodiments are operable to allow a user to select to pay for theinteractive program 206.

Some receiving devices 118 include a pause feature or the like so thatreceived program 204 may be paused or temporarily halted. For example,the program 204 may be saved into buffer 606 or another suitable memorymedia for later playback. In some embodiments, the program isautomatically paused while the information about program content 406,banner 412, invitation 410 and/or interactive content 414 are beingpresented or interacted with. The program may then and resume after oneor more of the information about program content 406, banner 412,invitation 410 and/or interactive content 414 are no longer beingpresented or interacted with. This may also be based on a user commandto clear presented information about program content 406, banner 412,invitation 410 and/or interactive content 414, or to continue playingthe program content 402. In some embodiments, the received interactiveprogram 206 and/or program content metadata 208 are also saved intobuffer 606 or another suitable memory media. In other embodiments,received interactive program 206 and/or program content metadata 208 arenot saved.

In some embodiments, if a selection of particular presented informationabout program content 406, banner 412, invitation 410 and/or interactivecontent 414 is received, the saved information about program content 410and/or other related information may continue to be saved for later use.For example, the user may view and/or interact with the interactivecontent 414, and thus interact with the interactive program 206, forsome period of time, and then return to viewing the program contentinformation 402. The saved information about program content 410 and/orother related information may be retrieved from memory 608 and presentedif the user wishes to return to the interactive content 414.

FIGS. 7, 8 and 9 are flowcharts 700, 800 and 900, respectively,illustrating processes of a system for selecting and providinginformation about program content 100 (FIG. 1). In this regard, eachdescribed process may represent a module, segment, or portion of code,which comprises one or more executable instructions for implementing thespecified logical function(s). It should also be noted that in someimplementations, the functions noted in the process may occur in adifferent order, may include additional functions, may occurconcurrently, and/or may be omitted.

FIG. 7 is a flowchart illustrating a process 700 providing a response toa query, according to an embodiment of the system for selecting andproviding information about program content.

At 702, the receiving device 118 receives data representing a query thatwas made by a user at a first particular time while a program was beingpresented on a user device.

At 704, the receiving device 118 associates the data representing thequery with the program.

At 706, the receiving device 118, in response to the receiving the datarepresenting the query, provides automatically, a response to the querybased on particular program content metadata and based on the particularprogram content metadata being related to particular program contentthat was presented on the user device substantially at the firstparticular time when the query was made by the user.

In other embodiments, one or more of the various steps or portions ofthe steps of process 700 may be performed by various different devicesor systems, such as, for example, any of the various devices and systemsshown in FIG. 1.

FIG. 8 is a flowchart illustrating a process 800 enabling presentationof at least some of program content metadata, according to an embodimentof the system for selecting and providing information about programcontent.

At 802, the receiving device 118, program distributor 106 or informationprovider 138 a receives program content metadata regarding a program.

At 804, the receiving device 118, program distributor 106 or informationprovider 138 a associates the program content metadata with one or morepoints within a course of the program.

At 806, the receiving device 118, program distributor 106 or informationprovider 138 a enables presentation of at least some of the programcontent metadata that is associated with a particular point within thecourse of the program in response to a query related to the particularpoint in the program.

In other embodiments, one or more of the various steps or portions ofthe steps of process 800 may be performed by various different devicesor systems, such as, for example, any of the various devices and systemsshown in FIG. 1.

FIG. 9 is a flowchart illustrating a process 900 communicating aresponse to be presented to a user, according to an embodiment of thesystem for selecting and providing information about program content.

At 902, the receiving device 118, program distributor 106 or informationprovider 138 a correlates a time a query was received from a user duringpresentation of a program with a particular point within the course ofthe program.

At 904, the receiving device 118, program distributor 106 or informationprovider 138 a correlates the particular point within the course of theprogram with at least some program content metadata regarding theprogram.

At 906, the receiving device 118, program distributor 106 or informationprovider 138 a determines that the at least some of the program contentmetadata is applicable to use in forming a response to the query basedon the correlations.

At 908, the receiving device 118, program distributor 106 or informationprovider 138 a communicates the response to be presented to a user atsome point during the presentation of the program.

In other embodiments, one or more of the various steps or portions ofthe steps of process 900 may be performed by various different devicesor systems, such as, for example, any of the various devices and systemsshown in FIG. 1.

While various embodiments have been described hereinabove, it is to beappreciated that various changes in form and detail may be made withoutdeparting from the spirit and scope of the invention(s) presently orhereafter claimed.

1. A method for providing information about program content, comprising:receiving, by a receiving device, a signal including a program, firstprogram content metadata generally related to the program as a whole,second program content metadata specifically associated with one or moreparticular points of the program, and one or more interactive programsassociated with the second program content metadata; presenting theprogram on a user device; receiving, by the receiving device, datarepresenting a voice query that was made by a user at a first particulartime during presentation of the program on the user device; in responseto the receiving the data representing the voice query that was made bythe user at the first particular time during presentation of the programon the user device, associating the first particular time with when thevoice query was made; accessing, by the receiving device, second programcontent metadata received in the same signal including the programrelated to a particular portion of the program that was presentedsubstantially at the first particular time, the first particular timeassociated with the voice query and indicating when the voice query wasmade; and in response to the receiving the data representing the voicequery, providing in a same signal, for presentation on a presentationdevice, the program, a response to the query based on the second programcontent metadata, and a user selectable element providing access to aninteractive program, from among the one or more interactive programs,associated with the second program content metadata related to theparticular portion of the program presented substantially at the firstparticular time indicating when the voice query was made; whereinproviding the response to the voice query includes: correlating theparticular portion of the program with the first particular timeindicating when the voice query was made by the user or with a secondparticular time when the data representing the voice query was received;and based on the correlation, obtaining the second program contentmetadata related to the particular portion of the program presented onthe user device substantially at the first particular time when thevoice query was made by the user; determining that the second programcontent metadata received in the same signal including the program isrelated to the particular portion of the program presented on the userdevice by determining that a point in the program associated with thesecond program content metadata substantially corresponds to a samepoint in the program at which the voice query was made by the user whilethe program was being presented on the user device; determining that thesecond program content metadata received in the same signal includingthe program is related to at least one particular person, object orsituation to which the voice query pertains; and based on thecorrelation and the determination that that the second program contentmetadata received in the same signal including the program is related tothe at least one particular person, object or situation to which thevoice query pertains, using the second program content metadata informing the response.
 2. The method of claim 1 wherein providing theresponse to the query based on the second program content metadataincludes providing the response during or substantially immediatelyafter the particular portion of the program was presented on the userdevice.
 3. The method of claim 1 wherein providing the response forpresentation on the presentation device includes presenting the responsesubstantially immediately after the query was made.
 4. The method ofclaim 1 wherein the presentation device is the user device.
 5. Themethod of claim 4 wherein providing the response for presentation on thepresentation device includes providing the response for presentation onthe user device along with subsequent program content as the programcontinues to be presented on the user device.
 6. The method of claim 1wherein the second program content metadata is associated with theparticular portion of the program as a result of one or moreassociations being received in the signal that contains the program, theone or more associations being between the second program contentmetadata and the particular portion of the program.
 7. The method ofclaim 1 wherein providing the response to the voice query includes:determining that the second program content metadata contains particularinformation to be used in the response based on automated inferenceanalysis of the data representing the received voice query.
 8. Themethod of claim 1 wherein the second program content metadata isassociated with the particular portion of the program as a result ofwhen the second program content metadata was received within a samesignal that contains the program.
 9. The method of claim 1 furthercomprising, storing the second program content metadata substantiallyonly during the presentation of the particular portion of the program towhich the second program content metadata is related.
 10. The method ofclaim 1 wherein the program is a satellite or cable broadcast program.11. The method of claim 1 wherein the program is an audio program. 12.The method of claim 1 wherein the providing the response includes:presenting the response on the user device; and presenting a prompt forthe user to which the user may respond to receive additional informationrelated to one or more of the response, the query and the particularportion of the program.
 13. A system for providing information aboutprogram content, comprising: at least one processor; and at least onememory coupled to the at least one processor, wherein the at least oneprocessor is configured to: receive a signal including a program, firstprogram content metadata related to the program, second program contentmetadata specifically associated with one or more particular points ofthe program, and one or more interactive programs associated with thesecond program content metadata; receive data representing a voice querymade by a user at a first particular time during presentation of theprogram; access second program content metadata related to a particularportion of the program presented substantially at the first particulartime; and provide in a same signal, for presentation on a presentationdevice, the program, the second program content metadata that is relatedto the particular portion of the program presented substantially at thefirst particular time, and a user selectable element providing access toan interactive program, from among the one or more interactive programs,associated with the second program content metadata related to theportion of the program presented substantially at the first particulartime; wherein providing the second program content metadata that isrelated to the particular portion of the program includes: correlating atime the query was received during presentation of the program with theparticular portion of the program; correlating the particular portion ofthe program with the second program content metadata; determining thatthe second program content metadata is applicable to use in forming theresponse to the query based on the correlations by: determining that thesecond program content metadata received in the same signal includingthe program is related to the particular portion of the programpresented substantially at the first particular time by determining thata point in the program associated with the second program contentmetadata substantially corresponds to a same point in the program atwhich the voice query was made by the user while the program was beingpresented; and determining that the second program content metadatareceived in the same signal including the program is related to at leastone particular person, object or situation to which the voice querypertains; forming the response including the second program contentmetadata received in the same signal including the program; andcommunicating the response including the second program content metadatareceived in the same signal including the program to be presented to auser.
 14. The system of claim 13 wherein providing the second programcontent metadata that is related to the particular portion of theprogram includes: electronically communicating associations ofparticular pieces of the second program content metadata each with arespective portion of the program to a receiving device or to thepresentation device.
 15. The system of claim 14 wherein theelectronically communicating associations of particular pieces of thesecond program content metadata each with the respective portion of theprogram to a receiving device or the presentation device includes:communicating the associations of particular pieces of the secondprogram content metadata each with one or more respective portions ofthe program to the receiving device or the presentation device in thesame signal that contains content of the program.
 16. A non-transitorycomputer readable medium having computer executable instructions thereonthat, when executed by a computer processor, cause the computerprocessor to: correlate a time a voice query was received from a userduring presentation of a program with a particular portion of theprogram; correlate the particular portion of the program with specificprogram content metadata regarding the program, the specific programcontent metadata being received in a same signal with the programcontent; determine that the specific program content metadata receivedin the same signal with the program content is applicable to use informing a response to the query based on the correlations by:determining that the specific program content metadata received in thesame signal including the program content is related to the particularportion of the program presented by determining that a point in theprogram associated with the specific program content metadatasubstantially corresponds to a same point in the program at which thevoice query was made by the user while the program was being presented;and determining that the specific program content metadata received inthe same signal including the program content is related to at least oneparticular person, object or situation to which the voice querypertains; and provide for presentation to the user during thepresentation of the program, the program, the response to the query, anda user selectable element providing access to the interactive programassociated with the specific program content metadata.
 17. Thenon-transitory computer readable medium of claim 16 wherein thecorrelating the particular portion of the program with the specificprogram content metadata includes: receiving associations of particularpieces of the specific program content metadata each with a respectiveportion of the program as the program is being presented to the user;searching the associations of particular pieces of the specific programcontent metadata to find which of the particular pieces of the specificprogram content metadata is associated with the particular portion ofthe program that is correlated to the time the query was received fromthe user; and determining that the particular pieces of specific programcontent metadata found associated with the particular portion of theprogram are the specific program content metadata that are correlatedwith the particular portion of the program.
 18. The method of claim 1wherein the first program content metadata includes timestampinformation.